// 注：此文件的用途是“为与‘职位（角色）管理’模块相关的接口定义TS数据类型”
// 为所有接口的响应数据中都拥有的属性（字段）（也就是“公共属性”）定义TS类型↓
export interface typeOfCommonPropertyInTheResponseDataOfAllOfTheApis {
    code: number,
    message: string,
    ok: boolean,
}
// 为存储了职位（角色）信息的对象定义TS类型↓
export interface typeOfObjectThatRepresentsAPosition {
    id?: number,
    createTime?: string,
    updateTime?: string,
    roleName: string,
    remark?: null,
}
// 为“获取职位（角色）列表”接口的响应数据中名为records的属性定义TS类型↓
export type typeOfPropertyNamedRecordsInTheResponseDataOfTheApiThatGetPositionList = typeOfObjectThatRepresentsAPosition[]
// 为“获取职位（角色）列表”接口的响应数据定义TS类型↓
export interface typeOfResponseDataOfTheApiThatGetPositionList extends typeOfCommonPropertyInTheResponseDataOfAllOfTheApis {
    data:{
        records: typeOfPropertyNamedRecordsInTheResponseDataOfTheApiThatGetPositionList,
        total: number,
        size: number,
        current: number,
        orders: [],
        searchCount: boolean,
        pages: number,
        optimizeCountSql: boolean,
        hitcount: boolean,
        countId: null,
        maxLimit: null,
    }
}
// 为存储了菜单权限或按钮权限信息的对象定义TS类型↓
export interface typeOfObjectThatStoreInformationOfMenuPermissionOrButtonPermission {
    id: number,
    createTime?: string,
    updateTime?: string,
    pid: number,
    name: string,
    code: string,
    toCode: string,
    type: number,
    status: null,
    level: number,
    children?:typeOfMenuAndButtonPermissionList,
    select: boolean,
}
// 为菜单权限或按钮权限列表定义TS类型↓
export type typeOfMenuAndButtonPermissionList = typeOfObjectThatStoreInformationOfMenuPermissionOrButtonPermission[]
// 为“获取所有菜单权限和按钮权限”接口的响应数据定义TS类型↓
export interface typeOfResponseDataOfTheApiThatGetAllPermissionOfMenuAndButton extends typeOfCommonPropertyInTheResponseDataOfAllOfTheApis {
    data: typeOfMenuAndButtonPermissionList
}